package com.cetcs.kmga.hbase.index;


import com.google.common.collect.Lists;

import java.sql.*;
import java.util.List;
import java.util.UUID;

/**
 * 类注释
 *
 * @author xutao
 * @version V1.0 创建时间：2017-09-27 15:14
 *          Copyright 2017 by CETC
 */
public class TestH2 {
    //数据库连接URL，通过使用TCP/IP的服务器模式（远程连接），当前连接的是内存里面的gacl数据库
    private static final String JDBC_URL = "jdbc:h2:tcp://172.17.225.125/mem:KMGA";
    //连接数据库时使用的用户名
    private static final String USER = "sa";
    //连接数据库时使用的密码
    private static final String PASSWORD = "sa";
    //连接H2数据库时使用的驱动类，org.h2.Driver这个类是由H2数据库自己提供的，在H2数据库的jar包中可以找到
    private static final String DRIVER_CLASS = "org.h2.Driver";

    public static void main(String[] args) throws Exception {
        // 加载H2数据库驱动
        Class.forName(DRIVER_CLASS);
        // 根据连接URL，用户名，密码获取数据库连接
//        Connection conn = DriverManager.getConnection(JDBC_URL, USER, PASSWORD);
        Connection conn = DruidH2Pool.getInstance().getConnection();
        Statement stmt = conn.createStatement();
        //如果存在USER_INFO表就先删除USER_INFO表
        stmt.execute("DROP TABLE IF EXISTS USER_INFO");
        //创建USER_INFO表
        stmt.execute("CREATE TABLE USER_INFO(id VARCHAR(36) PRIMARY KEY,name VARCHAR(100),sex INT (4))");
        PreparedStatement preparedStatement = conn.prepareStatement("INSERT INTO USER_INFO(id, name, sex) VALUES(?,?,?)");
        List<List<String>> data = Lists.newArrayList();
        for (int i = 0; i < data.size(); i++) {
            List<String> singleData = data.get(i);
            for (int j = 0; j < singleData.size(); j++) {
                preparedStatement.setString(j + 1, singleData.get(j));
            }
        }
        //删除
        stmt.executeUpdate("DELETE FROM USER_INFO WHERE name='大日如来'");
        //修改
        stmt.executeUpdate("UPDATE USER_INFO SET name='孤傲苍狼' WHERE name='苍狼'");
        //查询
        ResultSet rs = stmt.executeQuery("SELECT * FROM USER_INFO limit 0,10 ");
        //遍历结果集
        while (rs.next()) {
            System.out.println(rs.getString("id") + "," + rs.getString("name") + "," + rs.getString("sex"));
        }
        //释放资源
        stmt.close();
        //关闭连接
        conn.close();
    }

}
